Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ceramic prod deployment #278

Merged
merged 2 commits into from
Apr 17, 2024
Merged

Ceramic prod deployment #278

merged 2 commits into from
Apr 17, 2024

Conversation

m0ar
Copy link
Contributor

@m0ar m0ar commented Apr 15, 2024

Description of the Problem / Feature

The dev node only talks to the Clay testnet, for production we need one using the Ceramic mainnet.

Explanation of the solution

Add a deployment spec for the production node

Instructions on making this work

Part from the config that follows below, note these things:

  1. Needs a companion IPFS node (the URL public-ceramic-ipfs-prod-service-internal used in config below does not yet exist)
  2. A new, empty persistent disk for the state-store

The node config vault secrets require some tweaking in /desci-server/production/db compared to /desci-server/dev/db:

  1. .Data.ceramic_rpc needs to be set to an Ethereum mainnet endpoint
  2. .Data.ceramic_cas_pkey needs to be set to a new secret (sent to @hubsmoke in TG)
  3. .Data.ceramic_url needs to point to a new, empty database marked for ceramic mainnet

There is the full config for reference:

{
  "anchor": {
    "auth-method": "did",
    "ethereum-rpc-url": "{{ .Data.ceramic_rpc }}"
  },
  "node": {
    "privateSeedUrl": "inplace:ed25519#{{ .Data.ceramic_cas_pkey }}"
  },
  "http-api": {
    "cors-allowed-origins": [
      ".*"
    ],
    "admin-dids": [
      "did:key:z6MktbKJrMnhVJ37QFTo12911ycm2juKDUzWHDVETu9s5a9T"
    ]
  },
  "ipfs": {
    "mode": "remote",
    "host": "http://public-ceramic-ipfs-prod-service-internal.default.svc.cluster.local:5001"
  },
  "logger": {
    "log-level": 0
  },
  "metrics": {
    "metrics-exporter-enabled": false,
    "metrics-port": 9090
  },
  "network": {
    "name": "mainnet"
  },
  "state-store": {
    "mode": "fs",
    "local-directory": "/root/.ceramic/statestore"
  },
  "indexing": {
    "db": "{{ .Data.ceramic_url }}",
    "allow-queries-before-historical-sync": true,
    "models": []
  }
}

@m0ar m0ar requested a review from hubsmoke April 15, 2024 10:31
@m0ar m0ar self-assigned this Apr 15, 2024
@m0ar
Copy link
Contributor Author

m0ar commented Apr 17, 2024

Deployed and ready to go 💯

@m0ar m0ar closed this Apr 17, 2024
@m0ar m0ar reopened this Apr 17, 2024
@m0ar m0ar merged commit fc92e59 into develop Apr 17, 2024
@m0ar m0ar deleted the m0ar/ceramic-prod-deployment branch April 17, 2024 13:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant